/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package org.me.entityBeans;

import java.io.Serializable;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.List;
import javax.persistence.Basic;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient;

/**
 *
 * @author Administrador
 */
@Entity
@Table(name = "T_VEHICULOS_GENERAL")
@XmlRootElement
@NamedQueries({
    @NamedQuery(name = "TVehiculosGeneral.findAll", query = "SELECT t FROM TVehiculosGeneral t"),
    @NamedQuery(name = "TVehiculosGeneral.findByNIdVehiculoGeneralPk", query = "SELECT t FROM TVehiculosGeneral t WHERE t.nIdVehiculoGeneralPk = :nIdVehiculoGeneralPk"),
    @NamedQuery(name = "TVehiculosGeneral.findByVTipoTimonVehiculo", query = "SELECT t FROM TVehiculosGeneral t WHERE t.vTipoTimonVehiculo = :vTipoTimonVehiculo"),
    @NamedQuery(name = "TVehiculosGeneral.findByVTipoCombustibleVehiculo", query = "SELECT t FROM TVehiculosGeneral t WHERE t.vTipoCombustibleVehiculo = :vTipoCombustibleVehiculo"),
    @NamedQuery(name = "TVehiculosGeneral.findByVCarroceriaVehiculo", query = "SELECT t FROM TVehiculosGeneral t WHERE t.vCarroceriaVehiculo = :vCarroceriaVehiculo"),
    @NamedQuery(name = "TVehiculosGeneral.findByNNumeroRuedasVehiculo", query = "SELECT t FROM TVehiculosGeneral t WHERE t.nNumeroRuedasVehiculo = :nNumeroRuedasVehiculo"),
    @NamedQuery(name = "TVehiculosGeneral.findByNNumeroEjesVehiculo", query = "SELECT t FROM TVehiculosGeneral t WHERE t.nNumeroEjesVehiculo = :nNumeroEjesVehiculo"),
    @NamedQuery(name = "TVehiculosGeneral.findByNCapacidadCargaVehiculo", query = "SELECT t FROM TVehiculosGeneral t WHERE t.nCapacidadCargaVehiculo = :nCapacidadCargaVehiculo"),
    @NamedQuery(name = "TVehiculosGeneral.findByVTipoDireccionVehiculo", query = "SELECT t FROM TVehiculosGeneral t WHERE t.vTipoDireccionVehiculo = :vTipoDireccionVehiculo"),
    @NamedQuery(name = "TVehiculosGeneral.findByNLargoVehiculo", query = "SELECT t FROM TVehiculosGeneral t WHERE t.nLargoVehiculo = :nLargoVehiculo"),
    @NamedQuery(name = "TVehiculosGeneral.findByNAnchoVehiculo", query = "SELECT t FROM TVehiculosGeneral t WHERE t.nAnchoVehiculo = :nAnchoVehiculo"),
    @NamedQuery(name = "TVehiculosGeneral.findByNAltoVehiculo", query = "SELECT t FROM TVehiculosGeneral t WHERE t.nAltoVehiculo = :nAltoVehiculo"),
    @NamedQuery(name = "TVehiculosGeneral.findByNNumeroCilindrosVehiculo", query = "SELECT t FROM TVehiculosGeneral t WHERE t.nNumeroCilindrosVehiculo = :nNumeroCilindrosVehiculo"),
    @NamedQuery(name = "TVehiculosGeneral.findByNNumeroPuertasVehiculo", query = "SELECT t FROM TVehiculosGeneral t WHERE t.nNumeroPuertasVehiculo = :nNumeroPuertasVehiculo"),
    @NamedQuery(name = "TVehiculosGeneral.findByNCilindradaVehiculo", query = "SELECT t FROM TVehiculosGeneral t WHERE t.nCilindradaVehiculo = :nCilindradaVehiculo"),
    @NamedQuery(name = "TVehiculosGeneral.findByNNumeroAsientosVehiculo", query = "SELECT t FROM TVehiculosGeneral t WHERE t.nNumeroAsientosVehiculo = :nNumeroAsientosVehiculo"),
    @NamedQuery(name = "TVehiculosGeneral.findByNNumeroAirbagsVehiculo", query = "SELECT t FROM TVehiculosGeneral t WHERE t.nNumeroAirbagsVehiculo = :nNumeroAirbagsVehiculo"),
    @NamedQuery(name = "TVehiculosGeneral.findByVTipoTransmisionVehiculo", query = "SELECT t FROM TVehiculosGeneral t WHERE t.vTipoTransmisionVehiculo = :vTipoTransmisionVehiculo"),
    @NamedQuery(name = "TVehiculosGeneral.findByVTipoTraccionVehiculo", query = "SELECT t FROM TVehiculosGeneral t WHERE t.vTipoTraccionVehiculo = :vTipoTraccionVehiculo")})
public class TVehiculosGeneral implements Serializable {
    private static final long serialVersionUID = 1L;
    @Id
    @Basic(optional = false)
    @Column(name = "N_ID_VEHICULO_GENERAL_PK")
    private Long nIdVehiculoGeneralPk;
    @Column(name = "V_TIPO_TIMON_VEHICULO")
    private String vTipoTimonVehiculo;
    @Basic(optional = false)
    @Column(name = "V_TIPO_COMBUSTIBLE_VEHICULO")
    private String vTipoCombustibleVehiculo;
    @Column(name = "V_CARROCERIA_VEHICULO")
    private String vCarroceriaVehiculo;
    @Column(name = "N_NUMERO_RUEDAS_VEHICULO")
    private Short nNumeroRuedasVehiculo;
    @Column(name = "N_NUMERO_EJES_VEHICULO")
    private Short nNumeroEjesVehiculo;
    // @Max(value=?)  @Min(value=?)//if you know range of your decimal fields consider using these annotations to enforce field validation
    @Column(name = "N_CAPACIDAD_CARGA_VEHICULO")
    private BigDecimal nCapacidadCargaVehiculo;
    @Column(name = "V_TIPO_DIRECCION_VEHICULO")
    private String vTipoDireccionVehiculo;
    @Column(name = "N_LARGO_VEHICULO")
    private BigDecimal nLargoVehiculo;
    @Column(name = "N_ANCHO_VEHICULO")
    private BigDecimal nAnchoVehiculo;
    @Column(name = "N_ALTO_VEHICULO")
    private BigDecimal nAltoVehiculo;
    @Column(name = "N_NUMERO_CILINDROS_VEHICULO")
    private Short nNumeroCilindrosVehiculo;
    @Column(name = "N_NUMERO_PUERTAS_VEHICULO")
    private Short nNumeroPuertasVehiculo;
    @Column(name = "N_CILINDRADA_VEHICULO")
    private Short nCilindradaVehiculo;
    @Column(name = "N_NUMERO_ASIENTOS_VEHICULO")
    private BigInteger nNumeroAsientosVehiculo;
    @Column(name = "N_NUMERO_AIRBAGS_VEHICULO")
    private Integer nNumeroAirbagsVehiculo;
    @Column(name = "V_TIPO_TRANSMISION_VEHICULO")
    private String vTipoTransmisionVehiculo;
    @Column(name = "V_TIPO_TRACCION_VEHICULO")
    private String vTipoTraccionVehiculo;
    @OneToMany(cascade = CascadeType.ALL, mappedBy = "nIdVehiculoGeneralFk")
    private List<TTarjetaPropiedadVehiculos> tTarjetaPropiedadVehiculosList;
    @JoinColumn(name = "N_ID_MODELO_VEHICULO_G_FK", referencedColumnName = "N_ID_MODELO_ARTICULO_PK")
    @ManyToOne(optional = false)
    private TModelosArticulos nIdModeloVehiculoGFk;

    public TVehiculosGeneral() {
    }

    public TVehiculosGeneral(Long nIdVehiculoGeneralPk) {
        this.nIdVehiculoGeneralPk = nIdVehiculoGeneralPk;
    }

    public TVehiculosGeneral(Long nIdVehiculoGeneralPk, String vTipoCombustibleVehiculo) {
        this.nIdVehiculoGeneralPk = nIdVehiculoGeneralPk;
        this.vTipoCombustibleVehiculo = vTipoCombustibleVehiculo;
    }

    public Long getNIdVehiculoGeneralPk() {
        return nIdVehiculoGeneralPk;
    }

    public void setNIdVehiculoGeneralPk(Long nIdVehiculoGeneralPk) {
        this.nIdVehiculoGeneralPk = nIdVehiculoGeneralPk;
    }

    public String getVTipoTimonVehiculo() {
        return vTipoTimonVehiculo;
    }

    public void setVTipoTimonVehiculo(String vTipoTimonVehiculo) {
        this.vTipoTimonVehiculo = vTipoTimonVehiculo;
    }

    public String getVTipoCombustibleVehiculo() {
        return vTipoCombustibleVehiculo;
    }

    public void setVTipoCombustibleVehiculo(String vTipoCombustibleVehiculo) {
        this.vTipoCombustibleVehiculo = vTipoCombustibleVehiculo;
    }

    public String getVCarroceriaVehiculo() {
        return vCarroceriaVehiculo;
    }

    public void setVCarroceriaVehiculo(String vCarroceriaVehiculo) {
        this.vCarroceriaVehiculo = vCarroceriaVehiculo;
    }

    public Short getNNumeroRuedasVehiculo() {
        return nNumeroRuedasVehiculo;
    }

    public void setNNumeroRuedasVehiculo(Short nNumeroRuedasVehiculo) {
        this.nNumeroRuedasVehiculo = nNumeroRuedasVehiculo;
    }

    public Short getNNumeroEjesVehiculo() {
        return nNumeroEjesVehiculo;
    }

    public void setNNumeroEjesVehiculo(Short nNumeroEjesVehiculo) {
        this.nNumeroEjesVehiculo = nNumeroEjesVehiculo;
    }

    public BigDecimal getNCapacidadCargaVehiculo() {
        return nCapacidadCargaVehiculo;
    }

    public void setNCapacidadCargaVehiculo(BigDecimal nCapacidadCargaVehiculo) {
        this.nCapacidadCargaVehiculo = nCapacidadCargaVehiculo;
    }

    public String getVTipoDireccionVehiculo() {
        return vTipoDireccionVehiculo;
    }

    public void setVTipoDireccionVehiculo(String vTipoDireccionVehiculo) {
        this.vTipoDireccionVehiculo = vTipoDireccionVehiculo;
    }

    public BigDecimal getNLargoVehiculo() {
        return nLargoVehiculo;
    }

    public void setNLargoVehiculo(BigDecimal nLargoVehiculo) {
        this.nLargoVehiculo = nLargoVehiculo;
    }

    public BigDecimal getNAnchoVehiculo() {
        return nAnchoVehiculo;
    }

    public void setNAnchoVehiculo(BigDecimal nAnchoVehiculo) {
        this.nAnchoVehiculo = nAnchoVehiculo;
    }

    public BigDecimal getNAltoVehiculo() {
        return nAltoVehiculo;
    }

    public void setNAltoVehiculo(BigDecimal nAltoVehiculo) {
        this.nAltoVehiculo = nAltoVehiculo;
    }

    public Short getNNumeroCilindrosVehiculo() {
        return nNumeroCilindrosVehiculo;
    }

    public void setNNumeroCilindrosVehiculo(Short nNumeroCilindrosVehiculo) {
        this.nNumeroCilindrosVehiculo = nNumeroCilindrosVehiculo;
    }

    public Short getNNumeroPuertasVehiculo() {
        return nNumeroPuertasVehiculo;
    }

    public void setNNumeroPuertasVehiculo(Short nNumeroPuertasVehiculo) {
        this.nNumeroPuertasVehiculo = nNumeroPuertasVehiculo;
    }

    public Short getNCilindradaVehiculo() {
        return nCilindradaVehiculo;
    }

    public void setNCilindradaVehiculo(Short nCilindradaVehiculo) {
        this.nCilindradaVehiculo = nCilindradaVehiculo;
    }

    public BigInteger getNNumeroAsientosVehiculo() {
        return nNumeroAsientosVehiculo;
    }

    public void setNNumeroAsientosVehiculo(BigInteger nNumeroAsientosVehiculo) {
        this.nNumeroAsientosVehiculo = nNumeroAsientosVehiculo;
    }

    public Integer getNNumeroAirbagsVehiculo() {
        return nNumeroAirbagsVehiculo;
    }

    public void setNNumeroAirbagsVehiculo(Integer nNumeroAirbagsVehiculo) {
        this.nNumeroAirbagsVehiculo = nNumeroAirbagsVehiculo;
    }

    public String getVTipoTransmisionVehiculo() {
        return vTipoTransmisionVehiculo;
    }

    public void setVTipoTransmisionVehiculo(String vTipoTransmisionVehiculo) {
        this.vTipoTransmisionVehiculo = vTipoTransmisionVehiculo;
    }

    public String getVTipoTraccionVehiculo() {
        return vTipoTraccionVehiculo;
    }

    public void setVTipoTraccionVehiculo(String vTipoTraccionVehiculo) {
        this.vTipoTraccionVehiculo = vTipoTraccionVehiculo;
    }

    @XmlTransient
    public List<TTarjetaPropiedadVehiculos> getTTarjetaPropiedadVehiculosList() {
        return tTarjetaPropiedadVehiculosList;
    }

    public void setTTarjetaPropiedadVehiculosList(List<TTarjetaPropiedadVehiculos> tTarjetaPropiedadVehiculosList) {
        this.tTarjetaPropiedadVehiculosList = tTarjetaPropiedadVehiculosList;
    }

    public TModelosArticulos getNIdModeloVehiculoGFk() {
        return nIdModeloVehiculoGFk;
    }

    public void setNIdModeloVehiculoGFk(TModelosArticulos nIdModeloVehiculoGFk) {
        this.nIdModeloVehiculoGFk = nIdModeloVehiculoGFk;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (nIdVehiculoGeneralPk != null ? nIdVehiculoGeneralPk.hashCode() : 0);
        return hash;
    }

    @Override
    public boolean equals(Object object) {
        // TODO: Warning - this method won't work in the case the id fields are not set
        if (!(object instanceof TVehiculosGeneral)) {
            return false;
        }
        TVehiculosGeneral other = (TVehiculosGeneral) object;
        if ((this.nIdVehiculoGeneralPk == null && other.nIdVehiculoGeneralPk != null) || (this.nIdVehiculoGeneralPk != null && !this.nIdVehiculoGeneralPk.equals(other.nIdVehiculoGeneralPk))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return "org.me.entityBeans.TVehiculosGeneral[ nIdVehiculoGeneralPk=" + nIdVehiculoGeneralPk + " ]";
    }
    
}
